package code1_100.code11_20;

public class Code11 {

    static class Solution {
        //暴力法,60个用例，通过用例55，错误原因：超时，时间复杂度O(n²)
//        public int maxArea(int[] height) {
//            int x=0;
//            int h=0;
//            int max=0;
//            for (int i = 0; i < height.length-1; i++) {
//                for (int j = i+1; j < height.length; j++) {
//                    x=j-i;
//                    int area = x*Math.min(height[i],height[j]);
//                    max=Math.max(area,max);
//                }
//            }
//            return max;
//        }

        /**
         * 双指针法
         * @param height
         * @return 最大面积
         */
        public int maxArea(int[] height) {
            int max = 0;
            int left=0;
            int right = height.length-1;
            while (left<right){
                max=Math.max(max,Math.min(height[left],height[right])*(right-left));
                if (height[left]>height[right])
                    right--;
                else
                    left++;
            }
            return max;
        }
    }




}
